




import re
from typing import Dict, List

from tokens import OpticalLine


def replace_chinese_punctuation(text: str) -> str:
    """
    字符串中部分中文符合转换成英文符号
    """
    # 定义一个正则表达式模式，匹配中文标点符号
    pattern = re.compile(r'[，。！？、；：“”‘’（）《》【】]')

    def replace_func(match):
        # 定义一个替换字典，将中文标点映射到英文标点
        punctuation_mapping = {
            '，': ',',
            '。': '.',
            '？': '?',
            '！': '!',
            '；': ';',
            '：': ':',
            '“': '"',
            '”': '"',
            '‘': "'",
            '’': "'",
            '（': '(',
            '）': ')',
            '《': '<',
            '》': '>',
            # '【': '[',
            # '】': ']'
        }
        # 根据匹配到的中文标点返回对应的英文标点
        return punctuation_mapping.get(match.group(0), match.group(0))

        # 使用正则表达式的sub方法，传入替换函数进行替换

    translated_text = pattern.sub(replace_func, text)
    return translated_text
